//#include <iostream>
//#include <iomanip> // For std::setw and std::setfill
//
//bool IsLeapYear(int year)
//{
//    return (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0));
//}
//
//int main()
//{
//    int m, year, month, day, d;
//    int monthDays[13] = { -1, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
//
//    std::cin >> m;
//    while (m--)
//    {
//        std::cin >> year >> month >> day >> d;
//
//        // Adjust February for leap years
//        if (IsLeapYear(year))
//        {
//            monthDays[2] = 29;
//        }
//
//        // Calculate new date
//        while (d > 0)
//        {
//            if (day + d > monthDays[month])
//            {
//                d -= (monthDays[month] - day + 1);
//                day = 1;
//                month++;
//                if (month > 12)
//                {
//                    month = 1;
//                    year++;
//                }
//                // Adjust February for leap years in the next year
//                if (IsLeapYear(year))
//                {
//                    monthDays[2] = 29;
//                }
//                else
//                {
//                    monthDays[2] = 28;
//                }
//            }
//            else
//            {
//                day += d;
//                d = 0;
//            }
//        }
//
//        // Output the date in YYYY-MM-DD format
//        std::cout << year << "-";
//        std::cout.width(2);  // Set field width to 2
//        std::cout.fill('0'); // Fill with '0'
//        std::cout << month << "-";
//        std::cout.width(2);
//        std::cout.fill('0');
//        std::cout << day << std::endl;
//    }
//
//    return 0;
//}
#include <iostream>
using namespace std;
//int globalVar = 1;
//
//static int staticGlobalVar = 1;
//
//void Test()
//
//{
//
//	static int staticVar = 1;
//
//	int localVar = 1;
//
//
//
//	int num1[10] = { 1, 2, 3, 4 };
//
//	char char2[] = "abcd";
//
//	const char* pChar3 = "abcd";
//
//	int* ptr1 = (int*)malloc(sizeof(int) * 4);
//
//	int* ptr2 = (int*)calloc(4, sizeof(int));
//	cout << sizeof(char2) << endl;cout << strlen(char2) << endl;
//	cout << sizeof(pChar3) << endl;
//	cout << strlen(pChar3) << endl;
//	cout << sizeof(ptr1) << endl;
//	int* ptr3 = (int*)realloc(ptr2, sizeof(int) * 4);
//
//	free(ptr1);
//
//	free(ptr3);
//
//}
//
//
//int main()
//{
//	Test();
//}
class A
{
public:
	A() { cout << "A()" << endl; }
	~A() { cout << "~A()" << endl; }
};
class B
{
public:
	~B() { cout << "~B()" << endl; }
};
class C
{
public:
	~C() { cout << "~C()" << endl; }
};
class D
{
public:
	~D() { cout << "~D()" << endl; }
};
C c;

void main()

{

	A* pa = new A();

	B b;

	static D d;

	delete pa;

}